//#define _CRT_SECURE_NO_WARNINGS 1
//
//#include <stdio.h>
//
//int int_compar2(const void* p1, const void* p2)
//{
//	return (*((char*)p1) - *((char*)p2));
//}
//
//void test2()
//{
//	char arr[] = { 'a','C','z','W','m','D'};
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	qsort(arr, sz, sizeof(arr[0]), int_compar2);
//	int i = 0;
//	for (i = 0; i < sz; i++)
//	{
//		printf("%c ", arr[i]);
//	}
//	printf("\n");
//}
//
//int int_compar1(const void* p1, const void* p2)
//{
//	return (*((float*)p1) - *((float*)p2));
//}
//
//void test1()
//{
//	float arr[] = { 1.0,3.0,4.0,907.0,52.0,657.0,32.0,90.0 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	qsort(arr, sz, sizeof(arr[0]), int_compar1);
//	int i = 0;
//	for (i = 0; i < sz; i++)
//	{
//		printf("%.1f ", arr[i]);
//	}
//	printf("\n");
//}
//
//int int_compar(const void* p1, const void* p2)
//{
//	return (*((int*)p1) - *((int*)p2));
//}
//
//void test()
//{
//	int arr[] = { 1,3,4,907,52,657,32,90 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	qsort(arr, sz, sizeof(arr[0]), int_compar);
//	int i = 0;
//	for (i = 0; i < sz; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//	printf("\n");
//}
//
//int main()
//{
//	test();
//	test1();
//	test2();
//
//	return 0;
//}

//#include <stdio.h>
//
//void change(char* p1, char* p2, size_t size)
//{
//	int i = 0;
//	for (i = 0; i < size; i++)
//	{
//		char temp = *((char*)p1 + i);
//		*((char*)p1 + i) = *((char*)p2 + i);
//		*((char*)p2 + i) = temp;
//	}
//}
//
//int int_compar(void* p1, void* p2)
//{
//	return (*(int*)p1 - *(int*)p2);
//}
//
//void bubble_sort(int* base, size_t num, size_t size,int (*compar)(void*, void*))
//{
//	int i = 0;
//	for (i = 0; i < num; i++)
//	{
//		int j = 0;
//		for (j = 0; j < num - 1 - i; j++)
//		{
//			if ( compar( (char*)base + j*size,(char*)base + (j + 1)*size ) > 0)
//			{
//				change((char*)base + j * size, (char*)base + (j + 1) * size,size);
//			}
//		}
//	}
//}
//
//int main()
//{
//	int arr[] = { 9,4,5,3,6,2,7,1,8,0 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	bubble_sort(arr, sz, sizeof(arr[0]), int_compar);
//	int i = 0;
//	for(i = 0;i < sz; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//	printf("\n");
//
//	return 0;
//}